I. Field of the Invention
The present invention relates generally to robot calibration and more particularly to use of robot calibration to maximize absolute accuracy and repeatability of a robot-based measurement system.
II. Description of the Related Art
Within the general field of measurement/part inspection technology lies the technology related to devices known as coordinate measuring machines (CMMs). Manufacturing companies of any sort who desire to perform measurement of objects with a high level of accuracy have typically employed coordinate measurement machines to complete such tasks. A typical coordinate measuring machine consists of a three-axis machine with a touch probe mounted on a heavy, machined surface. The coordinate measurement machine generally further includes a controller which can be used to drive the touch probe until the touch probe makes contact with a surface on an object (generally referred to as "manual" teaching of the measurement positions). In the course of performing the measurement task, the controller displays and records the position of the touch probe at a plurality of locations on the object being measured.
Recently, as a result of the expense and limitations upon speed of the measurement process inherent to coordinate measurement machine technology, end users have begun to investigate use of less expensive, fast-moving industrial robots to carry measurement devices in order to collect measurement data faster allowing measurement of a larger number of objects. Furthermore, the fact that industrial robots are manufactured in large volumes alone insures that such "robot inspection systems" offer the opportunity to collect measurement data at a much lower cost per measured object than traditional coordinate measurement machine technology when used in applications which require less accuracy than traditional coordinate measurement machine technology.
The essential element of a robot inspection system is the use of the robot to position a measurement device in a location where a feature of interest (e.g. hole, edge, surface, etc.) is within the field of view or range of the measurement device itself. Typically, robot inspection systems employ a three dimensional sensor carried by the robot. Such three dimensional sensors may involve use of a variety of measurement technology including but not limited to cameras, lasers, combinations of cameras and lasers, and others. However, in applications such as surface inspection, a robot inspection system may employ devices which provide measurements in "less" than three dimensions. An example of one such known measurement device is use of the Perceptron Contour Sensor for two-dimensional measurement of objects. The Perceptron contour sensor comprises a sensor and illumination source positioned at an angle relative to one another within a housing. The illumination source, typically a laser light source, generates a plane of laser light normal to the light source, such as a prism or by other means. The plane of light from the light source produces a line on the surface of the object. The sensor, typically a Charge Coupled Device (CCD) camera, views the surface of the object at an angle relative to the plane of light generated by the laser light source. Optical filters are then utilized so that the CCD camera is sensitive to the particular wavelengths generated by the laser. Because the camera is viewing the surface of the object at an angle relative to the laser, the contour of the surface of the object results in a shaped line which is measured by the camera. These laser and camera systems are also utilized to measure the contours of the surfaces or measure gaps between two adjacent objects, such as components of a vehicle.
Irrespective of the type of measurement device employed by the robot inspection system, the principal benefits of using robots when attempting to perform measurement tasks are that: (1) industrial robots are manufactured in large volumes, (2) thus can be produced at a potentially lower cost per measurement volume, (3) the systems typically involve "non-contact" measurement devices, (4) the operator may position the measurement device using six degrees of freedom rather than three degrees of freedom typically offered by coordinate measuring machines, (5) the movement between measurement positions is at a much higher rate of speed, and (6) modern industrial robots routinely achieve position repeatability of better than 0.100 mm.
The principal problem with using robot inspection systems lies in the fact that although industrial robots are designed and manufactured to be "repeatable" in a specific set of conditions, they typically are not manufactured to achieve "absolute accuracy" and, further, are not designed to produce constant repeatability over time under different sets of conditions. Repeatability is defined as the robot's ability to return to the same positions in space when executing a particular robot program many times. In contrast, absolute accuracy is defined as the robot's ability to achieve a desired position in space using commanded coordinates, for example, in three dimensional space. Historically, robot manufacturers have focused on improving robot repeatability as each robot program was initially taught by an operator driving the robot to desired locations in space and simply recording it, no matter what values/coordinates were assigned to that position by the robot controller--based on the controller's calculation of the values/coordinates for the position using "nominal" dimensions of the robot type. In applications such as robot inspection systems where the position of the robot is used to identify the location of features on the measured object (i.e. holes, edges, surfaces), end users seek absolute accuracy of the robot position as well as repeatability. Factors such as tolerances in the manufacturing and assembly of robot components, deflection due to the effects of gravity, and other variations between an actual robot and the "nominal robot" used by the robot controller to calculate positions in three dimensional space, cause the industrial robot to achieve actual positions which vary from the desired positions (i.e. 998.135, 1002.723, 999.052 rather than 1000, 1000, 1000 position in three dimensional space). As a result of these issues of "absolute accuracy", the current use of robot inspection systems has been limited to "process variation" (i.e. the identification of direction of trends in dimensions of measured objects rather than the coordinate measuring machine capability of identifying the magnitude of variation between a particular measured object and its nominal dimensions), assuming that environmental conditions such as ambient temperature do not change. In the case of change in ambient temperature, for example, the size of robot components will change according to the thermal coefficient of the material from which the component was formed, so even the task of "process variation is compromised in real-world applications.
Attempts to solve the issue of absolute accuracy and process variation for robot inspection system applications have included: (1) use of a sensor in combination with an external measurement system, such as use of Steinbichler's COMET device together with Nothern Digital's Optotrack, to directly track the actual position achieved by the robot and its measurement devices in three-dimensional space, rather than relying on the position reported by the robot controller (effectively just using the robot just as a carrying device) at each robot position in the production measurement program; and (2) periodic "off-line" calibration of the of the robot inspection system using an external measurement system ("external calibration") such as Dynalog's DynaCal Robot Cell Calibration System or any other similar technique. The method utilizing an external measurement device to identify the actual position of the measurement device mounted on the robot carries fundamental and practical problems including: (1) a relatively low level of accuracy which such external systems can achieve throughout the working envelope of a standard industrial robot; and (2) the high purchase price of such an external measurement system easily eliminates any cost savings and reliability benefits in the use of a robot rather than traditional coordinate measuring machine technology.
An additional problem with the technique of using an external measurement system is the fact that the "tool center point" (TCP) of the measurement device mounted on the robot is not a "physical" one and therefore does not automatically correspond directly with the point of interest of the external measurement system. Furthermore, such individual "on-line" techniques typically do not identify the location of the fixtures (the structure that holds the object to be measured) relative to the robot's base frame directly. Finally, techniques involving external calibration of individual components do not facilitate automatic, periodic re-calibration "on line" (i.e. without operator intervention) to identify changes in robot and tool center point of the measurement device (for example changes due to fluctuations in ambient temperature).